Systems and methods for adaptive equalization in recording channels

ABSTRACT

Various embodiments of the present invention provide systems and methods for performing adaptive equalization. For example, various embodiments of the present invention provide methods for adaptive equalization that include providing a data processing system with an equalizer circuit ( 210 ) and a target filter circuit ( 265 ). The equalizer circuit performs equalization based at least in part on an equalizer coefficient ( 215 ). The methods further include generating an error ( 285 ) based upon a first output from the equalizer circuit and a second output from the target filter circuit. An inter-symbol interference component ( 295 ) is extracted from the error ( 285 ) and used to calculate an equalizer gradient ( 226 ). Based at least in part on the equalizer gradient ( 226 ), the equalizer coefficient ( 215 ) is calculated.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application claims priority to (is a non-provisional of) U.S. Pat. App. No. 61/016,231 entitled “Near Optimal Adaptive Equalization for Recording Channels”, and filed Dec. 21, 2007 by Mathew et al. The entirety of the aforementioned application is incorporated herein by reference for all purposes.

BACKGROUND OF THE INVENTION

The present inventions are related to systems and methods for data transfer, and more particularly to systems and methods for equalizing data in relation to a data transfer.

The natural and uncontrolled inter-symbol interference (ISI) of the recording channel can be very long. Compensating for this inter-symbol interference in a channel detector is both complex and hardware intensive. A channel equalizer may be used prior to the channel detector in an effort to minimize the complexity thereof. The signal to noise ratio provided by such an equalizer effects the degree to which the complexity of the channel detector can be reduced. The signal to noise ratio of the equalizer is dependent upon the selection of the proper target, but such target selection is not a simple task and itself can involve substantial complexity.

Further, such target selection is typically done beforehand and a static target is used during system operation. Because of this, the target may or may not be valid depending upon the dynamic operation of the channel. To avoid the problems incident with static target selection, a user programmable target is often used. This type of a target allows for user modification when system changes are detected. Selecting the appropriate user programmable target often relies on a trial and comparison approach to arrive at a desired target value. Once a reasonable target value is determined, the value is programmed into a semiconductor device supporting the channel at issue. While this process allows for compensation of some of the changes from one channel to another, it is a very time consuming process requiring a search and calculation of a corresponding detection error rate for each point in the search space. Further, such an approach does not easily compensate for changing characteristics of a given channel.

Hence, for at least the aforementioned reasons, there exists a need in the art for advanced systems and methods for providing equalizer target selection.

BRIEF SUMMARY OF THE INVENTION

The present inventions are related to systems and methods for data transfer, and more particularly to systems and methods for equalizing data in relation to a data transfer.

Various embodiments of the present invention provide methods for adaptive equalization. Such methods include providing a data processing system with an equalizer circuit and a target filter circuit. The equalizer circuit performs equalization based at least in part on an equalizer coefficient. The methods further include generating an error based upon a first output from the equalizer circuit and a second output from the target filter circuit. An inter-symbol interference component is extracted from the error and used to calculate an equalizer gradient. Based at least in part on the equalizer gradient, the equalizer coefficient is calculated.

In some instances of the aforementioned embodiments, the methods further include providing a data input derived from a storage medium having a number of sectors with each sector having a number of samples to the equalizer circuit. In some cases, extracting the inter-symbol interference is done on a sample-by-sample basis, and calculating the equalizer coefficient is done on a sector by sector basis.

In various instances of the aforementioned embodiments, the target filter circuit performs filtering of the data input based at least in part on a target coefficient. In such instances, the method further comprises calculating a target gradient based at least in part in the error, and based at least in part on the target gradient, calculating the target coefficient. In some cases, both the target coefficient and the equalizer coefficient are constrained. In some cases, calculating the target coefficient is done on a sector by sector basis.

Other embodiments of the present invention provide equalization circuits that include an equalizer circuit operable to equalize a data input based upon an updatable equalizer coefficient, and to provide an equalized output. The circuits further include a target filter circuit operable to perform filtering of the data input based at least in part on a target coefficient, and to provide a target output. An error calculation circuit is included that determines a difference between the target output and the equalized output, and provides an error output. A data dependent averaging circuit extracts an inter-symbol interference component of the error output, and a gradient accumulation circuit is operable to calculate an equalizer gradient based at least in part on the inter-symbol interference component of the error output. An equalizer coefficient calculation circuit receives the equalizer gradient and calculates the updatable equalizer coefficient.

In some instances of the aforementioned embodiments, the data input is derived from a storage medium having a number of sectors with each sector having a number of samples. In some cases, extracting the inter-symbol interference is done on a sample-by-sample basis, the data dependent averaging circuit operates on a sample by sample basis to extract the inter-symbol interference component of the error output, and calculating the equalizer coefficient is done on a sector by sector basis.

In some instances of the aforementioned embodiments, the gradient accumulation circuit is further operable to calculate a target gradient. In such instances, the circuits further include a target coefficient calculation circuit that receives the target gradient and calculates the updatable target coefficient. In some such instances, the data input is derived from a storage medium having a number of sectors with each sector having a number of samples, and the target coefficient calculation circuit calculates the updatable target coefficient on a sector by sector basis.

Yet other embodiments of the present invention provide transmission devices that include a receiver operable to receive data from a transmission medium. The receiver includes an equalizer circuit operable to equalize a data input based upon an updatable equalizer coefficient, and to provide an equalized output. The circuits further include a target filter circuit operable to perform filtering of the data input based at least in part on a target coefficient, and to provide a target output. An error calculation circuit is included that determines a difference between the target output and the equalized output, and provides an error output. A data dependent averaging circuit extracts an inter-symbol interference component of the error output, and a gradient accumulation circuit is operable to calculate an equalizer gradient based at least in part on the inter-symbol interference component of the error output. An equalizer coefficient calculation circuit receives the equalizer gradient and calculates the updatable equalizer coefficient. In some cases, the transmission device is a storage device and the transmission medium is a magnetic storage medium. In other instances, the transmission device is a communication device and the transmission medium is a wireless transmission medium.

This summary provides only a general outline of some embodiments of the invention. Many other objects, features, advantages and other embodiments of the invention will become more fully apparent from the following detailed description, the appended claims and the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

A further understanding of the various embodiments of the present invention may be realized by reference to the figures which are described in remaining portions of the specification. In the figures, like reference numerals are used throughout several figures to refer to similar components. In some instances, a sub-label consisting of a lower case letter is associated with a reference numeral to denote one of multiple similar components. When reference is made to a reference numeral without specification to an existing sub-label, it is intended to refer to all such multiple similar components.

FIG. 1 shows a baud-rate model for error determination that may be utilized in relation to an adaptive equalization system in accordance with some embodiments of the present invention;

FIG. 2 depicts an adaptive equalization system in accordance with various embodiments of the present invention;

FIG. 3 is a flow diagram showing a method for adaptive equalization in accordance with one or more embodiments of the present invention;

FIG. 4 depicts a storage system including a read channel with an adaptive equalizer and target coefficient calculation circuit in accordance with various embodiments of the present invention; and

FIG. 5 shows a communication system including a receiver with adaptive targeting and equalization in accordance with different embodiments of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The present inventions are related to systems and methods for data transfer, and more particularly to systems and methods for equalizing data in relation to a data transfer.

Various embodiments of the present invention provide systems and methods for channel equalization. In some cases, such embodiments separate channel equalization into two distinct operations. In the first operation, optimal target and equalizer coefficients are determined to minimize any residual inter-symbol interference. In the second operation, data dependent noise prediction is realized. By dividing the problem into two operations (i.e., equalizer and target coefficient determination, and noise prediction filters), the optimization of each can be designed either together or separately without incurring a performance loss. In some cases, closed form expressions for the optimal target and equalizer coefficients may be used. In other cases, an adaptive algorithm is implemented. As just one advantage of the adaptive embodiments, a manual search for the best target is rendered unnecessary as through adaptive calculation the system is able to identify an optimal target. Further, the target and equalizer coefficients remain in an optimal range even under time varying channel conditions.

Turning to FIG. 1, a baud-rate model 100 used to describe the separation of constituent components of an error signal 185 is shown. In particular, an ideal output 105 provided by a downstream detector (not shown) represents the non-return to zero (NRZ) bits written to a storage medium. Ideal output 105 is applied to a bit response (represented by a bit-response block 130 h_(b)[k] providing an output x_(m)[n]) and an impulse response (represented by an impulse response block 125 h_(i)[k] providing an output x_(l)[n]). The bit response and the impulse response may be represented by the following equations:

h_(b)(t) = h_(s)(t + 0.5T) − h_(s)(t − 0.5T); ${h_{i}(t)} = {\frac{\partial{h_{s}(t)}}{\partial t}.}$ Assuming the channel is band-limited and an ideal analog font-end (i.e., an ideal low pass filter with a cut-off frequency of

$\left. {\,^{+ {/ -}}\frac{1}{2\; T}} \right)$ is used, the baud rate of the signals at the output of an upstream analog to digital converter (not shown) may be represented by the following equations: x[n]=x _(l) [n]+x _(m) [n]+x _(r) [n], where

${{x_{l}\lbrack n\rbrack} = {\sum\limits_{k}{{a\lbrack k\rbrack}{h_{b}\left\lbrack {n - k} \right\rbrack}}}};{{x_{m}\lbrack n\rbrack} = {- {\sum\limits_{k}{{b\lbrack k\rbrack}{\tau\lbrack k\rbrack}{h_{i}\left\lbrack {n - k} \right\rbrack}}}}};$ and x_(r)[n]=v[n]. In this case, x_(l)[n] denotes the linear inter-symbol interference component, x_(m)[n] denotes the media noise component, x_(r)[n] denotes the electronics noise component, and h_(b)[n] and h_(i)[n]denote the baud rate samples h_(b)[t−0.5 T] and h_(i)[t], respectively, and v[n] denotes the baud-rate samples of the band-limited electronics noise. Using a model that separates inter-symbol interference from noise allows for development of a primary target optimized for addressing the inter-symbol interference component and a bank of noise prediction filters optimized for addressing the noise components. Such segregation allows for addressing the respective problems independently and in some cases allows for easier optimization and a higher degree of optimization.

For derivation purposes, the form of the primary target represented by a target block 120 that is chosen is given by:

${{\overset{\sim}{G}\lbrack D\rbrack} = {\left( {1 - {\alpha D}} \right){G\lbrack D\rbrack}}},{and}$ ${{G\lbrack D\rbrack} = {\sum\limits_{i = 0}^{{Ng} - 1}{{g\lbrack i\rbrack}D^{i}}}},$ where 0≦α≦1 is a parameter that is programmable to allow control of the DC content of the target as implemented by a DC content block 135. In target block 120, g[i] for i=0, 1, . . . , N_(g)−1 denotes the target coefficients, and in a delay block 115, D denotes the one bit delay operator. If α is selected as zero, then the DC content of the target will depend upon the underlying raw channel.

In baud-rate model 100, an equalizer block 110 represents calculation of an equalizer output using the equalizer coefficients, u[k] for k=0, 1, . . . , N_(u)−1. Delay block 115 represents implementation of a delay from the channel input to the equalizer output, m₀. The output d[n] represents the output of a target block 120. Based on this information, an output error signal, e[n], can be expressed as:

$\begin{matrix} {{e\lbrack n\rbrack} = {{y\lbrack n\rbrack} - {d\left\lbrack {n - m_{0}} \right\rbrack}}} \\ {= {{\sum\limits_{i = 0}^{{Nu} - 1}{{u\lbrack i\rbrack}{x\left\lbrack {n - i} \right\rbrack}}} - {\sum\limits_{i = 0}^{{Ng} - 1}{{g\lbrack i\rbrack}{\overset{\sim}{a}\left\lbrack {n - m_{0} - i} \right\rbrack}}}}} \\ {{= {{u^{T}x_{n}} - {g^{T}{\overset{\sim}{a}}_{n - {m\; 0}}}}},} \end{matrix}$ where:

-   -   u=[u[0], u[1], . . . , u[N_(u)−1]]^(T),     -   g=[g[0], g[1], . . . , g[N_(g)−1]]^(T),     -   x_(n)=[x[n], x[n−1], . . . , x[n−N_(u)+1]]^(T), and     -   ã_(n)=[ã[n], ã[n−1], . . . , ã[n−N_(g)+1]]^(T) with         ã[n]=a[n]−α·a[n−1].         Using the aforementioned equations, error signal e[n] may be         decomposed into constituent components:         e[n]=e _(l) [n]+e _(m) [n]+e _(r) [n],         where e_(l)[n] denotes the residual inter-symbol interference,         e_(m)[n] denotes the media noise component, and e_(r)[n] denotes         the electronics noise component. Based on this, the constituent         components of the error signal are defined by the following         equations:

${{e_{l}\lbrack n\rbrack} = {{{\sum\limits_{i = 0}^{{Nu} - 1}{{u\lbrack i\rbrack}{x_{l}\left\lbrack {n - i} \right\rbrack}}} - {\sum\limits_{i = 0}^{{Ng} - 1}{{g\lbrack i\rbrack}{\overset{\sim}{a}\begin{bmatrix} {n -} \\ {m_{0} -} \\ i \end{bmatrix}}}}} = {{u^{T}x_{l,n}} - {g^{T}{\overset{\sim}{a}}_{n - {m\; 0}}}}}},{{e_{m}\lbrack n\rbrack} = {{\sum\limits_{i = 0}^{{Nu} - 1}{{u\lbrack i\rbrack}{x_{m}\left\lbrack {n - i} \right\rbrack}}} = {u^{T}x_{m,n}}}},{and}$ ${e_{r}\lbrack n\rbrack} = {{\sum\limits_{i = 0}^{{Nu} - 1}{{u\lbrack i\rbrack}{x_{r}\left\lbrack {n - i} \right\rbrack}}} = {u^{T}{v_{n}.}}}$ In this case, x_(l,n)=[x_(l)[n], x_(l)[n−1], . . . , x_(l)[n−N_(u)+1]]^(T), v_(n)=[v[n], v[n−1], . . . , v[n−N_(u)+1]]^(T), and x_(m,n)=[x_(m)[n], x_(m)[n−1], . . . , x_(m)[n−N_(u)+1]]^(T). Note that because a[n], τ[n], and v[n] are mutually independent, the error components, e_(l)[n], e_(m)[n], and e_(r)[n] are mutually uncorrelated.

In one particular embodiment of the present invention where N_(u)=10, the following constraints are imposed on target block 120 and equalizer block 110:

$\begin{matrix} {{{\sum\limits_{i = 0}^{{Ng} - 1}{g\lbrack i\rbrack}} = \phi_{1}},{{u\lbrack 3\rbrack} = \phi_{2}},{{{{and}\mspace{14mu}{u\lbrack 4\rbrack}} - {u\lbrack 2\rbrack}} = \phi_{3}},} & {{Equations}\mspace{14mu} 1a} \end{matrix}$ where φ₁, φ₂, and φ₃ are constants chosen a priori. The constraints can be expressed as: g ^(T) i ₀=φ₁ and A ^(T) u=φ, where A ^(T) =[i ₄ , i ₅ −i ₃] and φ=[φ₂, φ₃]^(T).  Equations 1b In this case, i₀ is a N_(g)x1 vector of all 1's, and i_(k) is a N_(g)x1 vector of all 0's except at location k where it is ‘1’ for k=3, 4, 5. The foregoing assumes that the fourth tap is the main-tap of the equalizer. One of ordinary skill in the art will recognize several variations of these constraints suitable for equalizer and target filters.

The principle behind the proposed approach for designing the primary target, g[k], represented by target block 120, it to minimize the power of the residual inter-symbol interference. Using this idea, a closed form approach to the target design may be implemented in accordance with one or more embodiments of the present invention. To do so, the power of the inter-symbol interference may be expressed as: P _(isi) =E{e _(l) ² [n]}=u ^(T) R _(l) u+g ^(T) R _(ã) g−2u ^(T) R _(1,ã) g, where R_(l)=E{x_(l,n)x_(l,n) ^(T)}, R_(ã)=E{ã_(n)ã_(n) ^(T)}, and R_(l,ã)=E{x_(l,n)ã_(n−m0) ^(T)}. Here, E{*} denotes the statistical expectation operator. From this, P_(isi) is minimized subject to the previously defined constraints.

The Lagrange cost function underlying the aforementioned constrained minimization is given by: L(u,g,λ ₁,λ₂,λ₃)=u ^(T) R _(l) u+g ^(T) R _(ã) g−2u ^(T) R _(1,ã) g−2λ₁(g ^(T) i ₀−φ₁)−2λ^(T)(A ^(T) u−φ), where λ=[λ₂, λ₃]^(T), and {λ₁, λ₂, λ₃} are the Lagrange multipliers. The gradients of L(u, g, λ₁, λ₂, λ₃) with respect to u and g are given by: ∇_(u) L=2R _(l) u−2R _(l,ã) g−2Aλ, and ∇_(g) L=2R _(ã) g−2R _(l,ã) ^(T) u−2λ₁ i ₀. Solving for u and g results in the following equations: equal. coef.=u=λ ₁ R _(u) R _(l,ã) R _(ã) ⁻¹ i ₀ +R _(u) Aλ, and targ. coef.=g=R _(g) R _(l,ã) ^(T) R _(l) ⁻¹ Aλ+λ ₁ R _(g) i ₀, where R_(u)=[R_(l)−R_(l,ã)R_(ã) ⁻¹R_(l,ã) ^(T)]⁻¹ and R_(g)=[R_(ã)−R_(l,ã) ^(T)R_(l) ⁻¹R_(l,ã)]⁻¹. Using the preceding equations, the following matrix equation is defined:

${\begin{bmatrix} {i_{0}^{T}R_{g}i_{0}} & {i_{0}^{T}R_{g}R_{l,\overset{\sim}{a}}^{T}R_{l}^{- 1}A} \\ {A^{T}R_{u}R_{l,\overset{\sim}{a}}R_{\overset{\sim}{a}}^{- 1}i_{0}} & {A^{T}R_{u}A} \end{bmatrix}\begin{bmatrix} \lambda_{1} \\ \lambda \end{bmatrix}} = {\begin{bmatrix} \phi_{1} \\ \varphi \end{bmatrix}.}$ After solving for the Lagrange multipliers {λ₁, λ} using the preceding matrix equation, the optimum equalizer and target coefficients can be obtained from the equalizer and target coefficient equations set forth above.

The (i, j)^(th) elements of the correlation matrices R_(l), R_(ã), and R_(l,ã) may be computed as follows. Assuming that the received data bits a[n] are independent and identically distributed, the following definitional equations are obtained:

${{R_{l}\left( {i,j} \right)} = {\sum\limits_{k}{{h_{b}\lbrack k\rbrack}{h_{b}\left\lbrack {k + i - j} \right\rbrack}}}},{{for}\mspace{14mu} i},{j = 0},1,\ldots\mspace{14mu},{{N_{u} - 1};}$ ${{R_{\overset{\sim}{a}}\left( {i,j} \right)} = {{\left( {1 + \alpha^{2}} \right){\delta\left( {i - j} \right)}} - {\alpha\begin{bmatrix} {{\delta\left( {i - j - 1} \right)} +} \\ {\delta\left( {i - j + 1} \right)} \end{bmatrix}}}},{{for}\mspace{14mu} i},{j = 0},1,\ldots\mspace{14mu},{{N_{g} - 1};{and}}$ ${{R_{l,\overset{\sim}{a}}\left( {i,j} \right)} = {{h_{b}\left\lbrack {m_{0} + j - i} \right\rbrack} - {{\alpha h}_{b}\left\lbrack {m_{0} + j - i + 1} \right\rbrack}}},{{{for}\mspace{14mu} i} = 0},1,\ldots\mspace{14mu},{N_{u} - 1},\;{{{and}\mspace{14mu} j} = 0},1,\ldots\mspace{14mu},{N_{g} - 1},{{{where}\mspace{14mu}{\delta(k)}\mspace{14mu}{is}\mspace{14mu}{‘0’}\mspace{14mu}{when}\mspace{14mu} k} \neq 0},{{{and}\mspace{14mu}{‘1’}\mspace{14mu}{when}{\mspace{11mu}\;}k} = 0.}$

One of the steps in developing an adaptive algorithm is estimating the residual inter-symbol interference from error signal 185. This may be done by performing a data dependent averaging of error signal 185. Since electronics noise (v[n]) and position jitter (τ[n]) are zero mean random processes and are independent of the data bits (a[n]), averaging of error signal 185 provided by data dependent averaging circuit 290 (shown in FIG. 2) will effectively eliminate the contributions from media noise and electronics noise, leaving the residual inter-symbol interference component for each pattern as the average.

Using the principle of constrained least-mean-square algorithm as is known in the art, an adaptive approach for calculating equalizer coefficients and target coefficients may be developed. In particular, the equations for calculating the equalizer coefficients and target coefficients can be derived as: ũ[n+1]=u[n]−2μ_(u) x _(n) e _(d,k) [n], {tilde over (g)}[n+1]=g[n]+2μ_(g) ã _(n) e _(d,k) [n], equal. coef.=u[n+1]=ũ[n+1]+Θ_(u) [n], and targ. coef.=g[n+1]={tilde over (g)}[n+1]+Θ_(g) [n], where μ_(u) and μ_(g) are the adaptation step sizes for the equalizer and the target, respectively. In this case, e_(d,k)[n] is the estimate of the residual inter-symbol interference at the time instant n. The quantities Θ_(u)[n] and Θ_(g)[n] are obtained by determining the minimal amount of perturbations that would make ũ[n+1] and {tilde over (g)}[n+1] satisfy the constraints set forth in equations (1a-1c) above. That is, Θ_(u)[n] and Θ_(g)[n] are obtained by minimizing the following Lagrange cost functions: L _(u)(Θ_(u) [n],λ _(u))=Θ_(u) ^(T) [n]Θ _(u) [n]−2λ_(u) ^(T) [n](A ^(T) u[n+1]−φ, and L _(g)(Θ_(g) [n],λ _(g))=Θ_(g) ^(T) [n]Θ _(g) [n]−2λ_(g) ^(T) [n](i ₀ ^(T) g[n+1]−φ₁, where the 2x1 vector λ_(u)[n] and scalar λ_(g)[n] are Lagrange multipliers.

In view of the preceding, the gradients of L_(u) and L_(g) with respect to Θ_(u)[n] and Θ_(g)[n] are given by: ∇Θ_(u) L _(u)=2Θ_(u)−2Aλ _(u) [n], and ∇Θ_(g) L _(g)=2Θ_(g)−2i ₀λ_(g) [n],  Equations 2 respectively. By setting the aforementioned gradients to zero and applying the constraints of equations (1) above, the optimum values for Θ_(u)[n] and Θ_(g)[n] can be determined. Doing such yields the following equations:

${{\Theta_{u}\lbrack n\rbrack} = {{A\left( {A^{T}A} \right)}^{- 1}\left( {\phi - {A^{T}{\overset{\sim}{u}\left\lbrack {n + 1} \right\rbrack}}} \right)}},{and}$ ${\Theta_{g}\lbrack n\rbrack} = {\frac{\phi_{1} - {i_{0}^{T}{\overset{\sim}{g}\left\lbrack {n + 1} \right\rbrack}}}{N_{g}}{i_{0}.}}$ By substituting, the following equations are derived:

$\begin{matrix} {{{{equal}.\mspace{14mu}{coef}.} = {{u\left\lbrack {n + 1} \right\rbrack} = {{\overset{\sim}{u}\left\lbrack {n + 1} \right\rbrack} + {{A\left( {A^{T}A} \right)}^{- 1}\begin{pmatrix} {\phi -} \\ {A^{T}{\overset{\sim}{u}\left\lbrack {n + 1} \right\rbrack}} \end{pmatrix}}}}},{and}} & {{Equation}\mspace{14mu} 3a} \\ {{{targ}.\mspace{14mu}{coef}.} = {{g\left\lbrack {n + 1} \right\rbrack} = {{\overset{\sim}{g}\left\lbrack {n + 1} \right\rbrack} + {\frac{\phi_{1} - {i_{0}^{T}{\overset{\sim}{g}\left\lbrack {n + 1} \right\rbrack}}}{N_{g}}{i_{0}.}}}}} & {{Equation}\mspace{14mu} 3b} \end{matrix}$

It can be verified that the immediately preceding equations satisfy the constraints A^(T)u[n+1]=φ and i₀ ^(T){tilde over (g)}[n+1]=φ₁. The preceding equations can be simplified since A^(T)u[n]=φ and i₀ ^(T){tilde over (g)}[n]=φ₁, resulting in the following equations for updated equalizer coefficients 215 (shown in FIG. 2) and updated target coefficients 270 (shown in FIG. 2):

$\begin{matrix} {{{{equal}.{coef}.} = {{u\left\lbrack {n + 1} \right\rbrack} = {{u\lbrack n\rbrack} - {2\mu_{u}{e_{d,k}\lbrack n\rbrack}\left( {I_{Nu} - {{A\left( {A^{T}A} \right)}^{- 1}A^{T}}} \right)x_{n}}}}},} & {{Equation}\mspace{14mu} 4a} \\ {{{and}\mspace{14mu}{{targ}.{coef}.}} = {{g\left\lbrack {n + 1} \right\rbrack} = {{g\lbrack n\rbrack} + {2\mu_{g}{e_{d,k}\lbrack n\rbrack}{\left( {{\overset{\sim}{a}}_{n} - {\frac{i_{0}^{T}{\overset{\sim}{a}}_{n}}{N_{g}}i_{0}}} \right).}}}}} & {{Equation}\mspace{14mu} 4b} \end{matrix}$

As an example, for N_(u)=10, N_(g)=3, and when the main tap of digital finite impulse response filter 110 is the fourth tap, the preceding equations for updated equalizer coefficients and updated target coefficients can be simplified as:

     equal.coef. = u_(i)[n + 1] = u_(i)[n] − 2μ_(u)x[n − i]e_(d, k)[n],       for  i = 0, 1, 5, 6, 7, 8, 9; equal.coef. = u_(i)[n + 1] = u_(i)[n] − μ_(u)e_(d, k)[n](x[n − 2] + x[n − 4]),     for  i = 2, 4; ${{{targ}.{coef}.} = {{g_{i}\left\lbrack {n + 1} \right\rbrack} = {{g_{i}\lbrack n\rbrack} + {2\mu_{g}{e_{d,k}\lbrack n\rbrack}\begin{pmatrix} {{\overset{\sim}{a}\left\lbrack {n - m_{0} - i} \right\rbrack} -} \\ \frac{\sum\limits_{j = 0}^{2}{\overset{\sim}{a}\left\lbrack {n - m_{0} - j} \right\rbrack}}{N_{g}} \end{pmatrix}}}}},\mspace{79mu}{{{for}\mspace{14mu} i} = 0},1,{2;}$      with  u₃  always  set  equal  to  ϕ₂  for  all  n.

Due to finite precision effects, the adapted coefficients may slowly drift away from the constraint satisfying region. Therefore, in some cases, the adaptive algorithm is implemented based on equations (3) above rather than equations (4). The tap-wise adaptive equations for the equalizer corresponding to equations (3) can be written in the simplified form as:

u_(i)[n + 1] = u_(i)[n] − 2μ_(u)x[n − i]e_(d, k)[n],  for  i = 0, 1, 2, 5, 6, 7, 8, 9; ${\overset{\sim}{u}\left\lbrack {n + 1} \right\rbrack} = {0.5\left\{ {{{u_{2}\lbrack n\rbrack} + {u_{4}\lbrack n\rbrack} - {2{\mu_{u}\left( {{x\left\lbrack {n - 2} \right\rbrack} + {{x\left\lbrack {n - 4} \right\rbrack}{e_{d,k}\lbrack n\rbrack}}} \right\}}}};{{u_{2}\left\lfloor {n + 1} \right\rfloor} = {{\overset{\sim}{u}\left\lfloor {n + 1} \right\rfloor} - \frac{\phi_{3}}{2}}};\mspace{14mu}{{{and}\mspace{14mu}{u_{4}\left\lbrack {n + 1} \right\rbrack}} = {{\overset{\sim}{u}\left\lbrack {n + 1} \right\rbrack} + {\frac{\phi_{3}}{2}.}}}} \right.}$ The adaptive equations for the target corresponding to equations (3) can be written in the simplified form as:

$\left. {{{{{\overset{\sim}{g}}_{i}\left\lbrack {n + 1} \right\rbrack} = {{g_{i}\lbrack n\rbrack} + {2\mu_{g}{\overset{\sim}{a}\left\lbrack {n - m_{0} - i} \right\rbrack}{e_{d,k}\lbrack n\rbrack}}}},{{{for}\mspace{14mu} i} = 0},1,{2;\mspace{14mu}{and}}}{{g_{i}\left\lbrack {n + 1} \right\rbrack} = {{{\overset{\sim}{g}}_{i}\left\lbrack {n + 1} \right\rbrack} + \frac{\phi_{1} - {\sum\limits_{j = 0}^{2}{{\overset{\sim}{g}}_{j}\left\lbrack {n + 1} \right\rbrack}}}{N_{g}}}}} \right),{{{for}\mspace{14mu} i} = 0},1,2,{{{where}\mspace{14mu}{u_{3}\lbrack n\rbrack}} = {\phi_{2}\mspace{14mu}{for}\mspace{14mu}{all}\mspace{14mu}{n.}}}$

Turning to FIG. 2, an adaptive equalization system 200 is shown in accordance with various embodiments of the present invention. Adaptive equalization system 200 includes an equalizer implemented as a digital finite impulse response filter 210. Digital finite impulse response filter 210 receives a series of digital samples 205, x[n], performs an equalization process, and provides a corresponding series of equalized samples 220, y[n]. In some embodiments of the present invention, digital samples 205 are provided by an analog to digital converter (not shown). In some cases, digital samples 205 correspond to an analog input derived from a magnetic storage medium. In other cases, digital samples 205 correspond to an analog input derived from a communication channel. Based on the disclosure provided herein, one of ordinary skill in the art will recognize a variety of sources for digital samples 205. The equalization process is governed by updated equalizer coefficients 215. As more fully described below, updated equalizer coefficients 215 are adaptively calculated and therefore are capable of adjusting to time varying channel conditions. It should be noted that while the equalizer is implemented as a digital finite impulse response filter, other types of adjustable equalizers may be used in relation to different embodiments of the present invention.

Equalized samples 220 are provided to a detector 225 that performs a detection process and provides an ideal output 230, a[n−M_(d)] where M_(d) is the detector latency. Detector 225 may be any detector known in the art that is capable of implementing a detection algorithm capable of regenerating an original input. Equalized samples 220 are also provided to a delay circuit 235 that delays the equalized samples by a delay value 240, M₀, and provides a delayed output 245, y[n−M₀]. Ideal output 230, a[n−M_(d)], is provided to a delay circuit 250 where it is delayed by a delay value 255, N₁, such that M₀=M_(d)+N₁, where N₁ is the number of pre-cursor components used in residual inter-symbol interference estimation. The resulting delayed output 260, a[n−M₀], is aligned in time with delayed output 245. Delayed output 260 is provided to a target filter 265 that operates in accordance with updated target coefficients 270. Target filter 265 provides a target output 275, d[n−M₀]. Target output 275 is subtracted from delayed output 245 using a summation element 280. The result of the subtraction is an error signal 285, e[n−M₀]. Error signal 285 represents the difference between the output of the equalizer, digital finite impulse response filter 210, and ideal output 230 after processing through target filter 265.

Error signal 285 and delayed output 260 are provided to a data dependent averaging circuit 290. Data dependent averaging circuit 290 separates the mis-equalization component (i.e., inter-symbol interference (e_(l)[n])) from the other constituent components of error signal 285. Since electronics noise (v[n]) and position jitter (τ[n]) are zero mean random processes and are independent of the data bits (a[n]), averaging of error signal 285 provided by data dependent averaging circuit 290 will effectively eliminate the contributions from media noise and electronics noise, leaving the residual inter-symbol interference component for each pattern as the average. Thus, a data dependent averaged output 295 (e_(d,k)[n]) of data dependent averaging circuit 290 is approximately equivalent to the inter-symbol interference or mis-equalization component (e_(l)[n]) of error signal 285.

Data dependent averaging may be done in accordance with the following approach where the pattern length is N_(c) bits and the n^(th) instant in time. Placing the window of the data pattern symmetrically around the current time instant n, the following is obtained:

${a_{d,n} = \left\{ {{a\left\lbrack {n - \frac{N_{c} - 1}{2}} \right\rbrack},{a\left\lbrack {n - \frac{N_{c} - 1}{2} + 1} \right\rbrack},\ldots\mspace{14mu},{a\left\lbrack {n + \frac{N_{c} - 1}{2} - 1} \right\rbrack},{a\left\lbrack {n + \frac{N_{c} - 1}{2}} \right\rbrack}} \right\}},\mspace{14mu}{{if}\mspace{14mu} N_{c}\mspace{14mu}{is}\mspace{14mu}{odd}},\;{and}$ ${{a_{d,n} = \left\{ {{a\left\lbrack {n - \frac{N_{c}}{2} + 1} \right\rbrack},{a\left\lbrack {n - \frac{N_{c}}{2} + 2} \right\rbrack},\ldots\mspace{14mu},{a\left\lbrack {n + \frac{N_{c}}{2} - 1} \right\rbrack},\;{a\left\lbrack {n + \frac{N_{c}}{2}} \right\rbrack}} \right\}},\mspace{14mu}{{if}\mspace{14mu} N_{c}\mspace{14mu}{is}\mspace{14mu}{{even}.}}}\;$ Then, the residual inter-symbol interference component can be estimated in accordance with the following equation:

$\left. \begin{matrix} {n_{k} = {n_{k} + 1}} \\ {{e_{d,k}\lbrack n\rbrack} = {{\frac{n_{k} - 1}{n_{k}}{e_{d,k}\left\lbrack {n - 1} \right\rbrack}} + {\frac{1}{n_{k}}{e\lbrack n\rbrack}}}} \end{matrix} \right\},{{{if}\mspace{14mu} a_{d,n}} = {A_{d}\left( {:{,k}} \right)}},\mspace{14mu}{{{and}\mspace{14mu}{e_{d,k}\lbrack n\rbrack}} = {e_{d,k}\left\lbrack {n - 1} \right\rbrack}},\mspace{14mu}{{otherwise}.}$ In this case, A_(d) is a N_(c)×2^(Nc) matrix of all possible N_(c)-bits data patterns, A_(d) (:,k) denotes the k^(th) column of A_(d), and n _(k) is the number of times the data pattern corresponding to the k^(th) column of A_(d) has occurred in the input data sequence up to the n^(th) instance in time. Positioning the data pattern window as set forth the in equation for ã_(d,n) results in capturing both post cursor inter-symbol interference and pre-cursor inter-symbol interference in e_(d,k)[n]. However, in some embodiments of the present invention, the pattern window may be positioned in accordance with the following equation to focus on pre-cursor inter-symbol interference in an effort to provide good equalization and detection performance: a _(d,n) ={a[n], a[n+1], . . . , a[n+N _(c)−2], a[n+N _(c)−2]}.  Equation 5 One of ordinary skill in the art will recognize that the data-dependent averaging process described above may also be implemented using any averaging methods such as exponential averaging, uniform averaging, windowed averaging, or the like.

Data dependent averaged output 295 is provided to a gradient accumulation circuit 201. In addition, gradient accumulation circuit 201 receives delayed output 260, a[n−M₀], and a delayed version of digital samples 205, x[n]. The delayed version of digital samples 205 is labeled as delayed output 206, x[n−M₀], and is aligned in time with delayed output 260. Based on these inputs, gradient computation circuit 201 calculates an equalization gradient 226 and a target gradient 231 in accordance with the following equations: equal. gradient=∇_(u) e ² [n]=2x _(n−M0) e _(d,k) [n], and targ. gradient=∇_(g) e ² [n]=−2ã _(n−M0) e _(d,k) [n].

Equalization gradient 226 and target gradient 231 are provided to an adaptive equalizer coefficient and target coefficient calculation circuit 211. Adaptive equalizer coefficient and target coefficient calculation circuit 211 provides updated equalizer coefficients 215 to digital finite impulse response filter 210 and updated target coefficients 270 to target filter 265. In some embodiments of the present invention, updated equalizer coefficients 215 are calculated in accordance with equation (3a) above which is replicated below for convenience: equal. coef.=u[n+1]=ũ[n+1]+A(A ^(T) A)⁻¹(φ−A ^(T) ũ[n+1]), where ũ[n+1]=u[n]−2μ_(u)x_(n−M0)e_(d,k)[n]. In such embodiments, updated target coefficients 270 are calculated in accordance with equations (3b) above which is replicated below for convenience:

${{{targ}.{coef}.} = {{g\left\lbrack {n + 1} \right\rbrack} = {{\overset{\sim}{g}\left\lbrack {n + 1} \right\rbrack} + {\frac{\phi_{1} - {i_{0}^{T}{\overset{\sim}{g}\left\lbrack {n + 1} \right\rbrack}}}{N_{g}}i_{0}}}}},$ where {tilde over (g)}[n+1]=g[n]+2μ_(g)ã_(n−M0)e_(d,k)[n]. In other embodiments of the present invention, updated equalizer coefficients 215 are calculated in accordance with equation (4a) above which is replicated below for convenience: equal. coef.=u[n+1]=u[n]−2μ_(u) e _(d,k) [n](I _(Nu) −A(A ^(T) A)⁻¹ A ^(T))x _(n). In such embodiments, updated target coefficients 270 are calculated in accordance with equations (4b) above which is replicated below for convenience:

${{targ}.{coef}.} = {{g\left\lbrack {n + 1} \right\rbrack} = {{\overset{\sim}{g}\lbrack n\rbrack} + {2\mu_{g}{e_{d,k}\lbrack n\rbrack}{\left( {{\overset{\sim}{a}}_{n} - {\frac{i_{0}^{T}{\overset{\sim}{a}}_{n}}{N_{g}}i_{0}}} \right).}}}}$

In some embodiments of the present invention, implementing the aforementioned adaptive approach utilizes a separate target filter and equalizer used for adaptation purposes only, and existing apart from the target filter and equalizer on the main signal path which are not affected on a sample-by-sample basis. Such an approach avoids the necessity of using the adapting values of the target coefficients inside the detector while branch metrics and path metrics are computed. This approach is, however, hardware intensive as it requires an additional target filter and equalizer in parallel to those in the main signal path. Other embodiments avoid the additional hardware cost by using a modified adaptation strategy. The updated equalizer coefficients and updated target coefficients are adapted only once per sector. In some cases, this adaptation is done once at the end of each sector. In doing such, the instantaneous gradients for the equalizer and target filters are calculated for every sample continuing across the entire sector. At the end of the sector, or at some point in the sector, the accumulated gradients are used for calculating the updated equalizer coefficients and updated target coefficients.

The resulting algorithm for adapting the equalizer and target coefficients is described in relation to a flow diagram 300 of FIG. 3. Following flow diagram 300, equalizer and target coefficients are initialized to values within the selected constraints (block 305). The initial equalizer coefficients are referred to as u, and the initial target coefficients are referred to as g. For the constraints given in equations (1a)-(1b), any given target vector g=[g₀, g₁, g₂]^(T) and equalizer vector u=[u₀, u₁, . . . , u₉]]^(T) can be made to satisfy the constraints as follows:

$\left. g_{i}\leftarrow{g_{i} + \frac{\phi_{1} - g_{0} - g_{1} - g_{2}}{3}} \right.,\mspace{14mu}{i = 0},1,2$ ${u_{3} = \phi_{2}},\mspace{14mu}{\overset{\sim}{u} = \frac{u_{2} + u_{4}}{2}}$ ${u_{2} = {\overset{\sim}{u} - \frac{\phi_{3}}{2}}},\mspace{20mu}{u_{4} = {\overset{\sim}{u} + \frac{\phi_{3}}{2}}}$ and u_(i) for i=0, 1, 5, 6, . . . , 9 remain unchanged. One of ordinary skilled in the art will recognize that the above constraints satisfying approach can be easily generalized to equalizer and target vectors of any length and any type of linear constraints. The resulting constraints satisfying equalizer coefficients and target coefficients are applied to the equalizer and target filters of the main signal path. For each sector of data processed, the gradient vector for each of the equalizer calculation and the target calculation are initialized to zero (block 310). The equalizer gradient is referred to as q_(u), and the target gradient is referred to as q_(g). Then, the data pattern a_(d,n) corresponding to the current time instant is extracted (block 315). This may be done in accordance with equation (5) above as: a _(d,n) ={a[n], a[n+1], . . . , a[n+N _(c)−2], a[n+N _(c)−2]}. The error at the equalizer output in the main signal path is then calculated (block 320). This may be done in accordance with the equation below that was previously described above in relation to FIG. 1:

${e\lbrack n\rbrack} = {{{y\lbrack n\rbrack} - {d\left\lbrack {n - m_{0}} \right\rbrack}} = {{{\sum\limits_{i = 0}^{{Nu} - 1}{{u\lbrack i\rbrack}{x\left\lbrack {n - i} \right\rbrack}}} - {\sum\limits_{i = 0}^{{Ng} - 1}{{g\lbrack i\rbrack}{\overset{\sim}{a}\left\lbrack {n - {m\; 0} - i} \right\rbrack}}}} = {{u^{T}x_{n}} - {g^{T}{{\overset{\sim}{a}}_{n - {m\; 0}}.}}}}}$

The residual inter-symbol interference (e_(d,k)[n]) corresponding to the immediate instance in time is then extracted (block 325). This process is repeated across a number of samples from the sector. In some cases, it is repeated for every sample in the sector. During a later portion of each sector, the gradients corresponding to the equalizer and target filters are accumulated (block 330). In some cases, this is done across the last half of the samples from the sector. The gradients are calculated and accumulated in accordance with the following equations: q _(u) [n]=q _(u) [n−1]+x _(n−M0) e _(d,k) [n], if n>0.5N_(s); and q _(g) [n]=q _(g) [n−1]+ã_(n−M0) e _(d,k) [n], if n>0.5N_(s), where q_(u)[n] and q_(g)[n] denote the accumulated gradients at an instance n, and N_(s) is the number of bits in the sector. It should be noted that in some cases, the multiplier 0.5 may be modified depending upon where in the sector accumulation is deigned to begin. Further, in some cases, computation of equalizer gradient may be simplified, for example, by using sign (x_(n−M0)) in place of x_(n−M0).

It is then determined whether the end of the sector has been reached (block 335). Where the end of the sector has not yet been reached (block 335), the processes of blocks 310-330 are repeated for the subsequent sample. Alternatively, where the end of the sector has been reached (block 335), the equalizer coefficients are updated and the target coefficients are updated and constrained (blocks 340, 345, 350). In some embodiments of the present invention, the equalizer coefficients are updated and constrained in accordance with the following equations that were suggested above: ũ←u−2μ_(u) q _(u) [N _(s)], and u←ũ+A(A ^(T) A)⁻¹ [φ−A ^(T) u]. In such embodiments, the target coefficients are updated and constrained in accordance with the following equations that were suggested above:

$\left. \overset{\sim}{g}\leftarrow{g + {2\mu_{g}{q_{g}\left\lbrack N_{s} \right\rbrack}}} \right.,\mspace{14mu}\left. {{and}\mspace{14mu} g}\leftarrow{\overset{\sim}{g} + {i_{0}{\frac{{\phi 1} - {i_{0}^{T}\overset{\sim}{g}}}{N_{g}}.}}} \right.$ In other embodiments of the present invention, the equalizer coefficients are updated and constrained in accordance with the following equations that were suggested above:

u_(i) ← u_(i) − 2μ_(u)q_(u, i)[N_(s)],  for  i = 0, 1, 2, 5, 6, 7, 8, 9; $\left. \overset{\sim}{u}\leftarrow{0.5\left\{ {u_{2} + u_{4} - {2{\mu_{u}\left( {{q_{u,2}\left\lbrack N_{s} \right\rbrack} + {q_{u,4}\left\lbrack N_{s} \right\rbrack}} \right)}}} \right\}} \right.;\mspace{14mu}\left. u_{2}\leftarrow{\overset{\sim}{u} - \frac{\phi_{3}}{2}} \right.;\mspace{14mu}{and}$ ${u_{4} = {\overset{\sim}{u} + \frac{\phi_{3}}{2}}},$ Where u₃ is always set equal to φ₂. In such embodiments, the target coefficients are updated and constrained in accordance with the following equations that were suggested above:

${{{\overset{\sim}{g}}_{i} = {g_{i} + {2\mu_{g}{q_{g,i}\left\lbrack N_{s} \right\rbrack}}}},\mspace{14mu}{{{for}\mspace{14mu} i} = 0},1,{2;\mspace{14mu}{and}}}\mspace{14mu}$ ${{g_{i} = {{\overset{\sim}{g}}_{i} + \frac{\phi_{1} - {\sum\limits_{j = 0}^{2}{\overset{\sim}{g}}_{j}}}{N_{g}}}},\mspace{14mu}{{{for}\mspace{14mu} i} = 0},1,2,}\;$ where u₃ is always set equal to φ₂. In this case, q_(u,i)[N_(s)] and q_(g,i)[N_(s)] are the i^(th) and j^(th) coefficients in the accumulated gradient vectors q_(u)[N_(s)] and q_(g)[N_(s)], respectively, for i=0, 1, . . . 9 and j=0, 1, 2.

Turning to FIG. 4, a storage system 400 including a read channel with an adaptive equalizer and target coefficient calculation circuit 410 is shown in accordance with various embodiments of the present invention. Storage system 400 may be, for example, a hard disk drive. The incorporated adaptive calculation circuit is capable of adaptively calculating equalizer and target coefficients based upon a received data stream. Thus, the adaptive calculation circuit may be implemented in accordance with that described above in relation to FIGS. 1-3 above. In addition, storage system 400 includes an interface controller 420, a preamplifier 412, a hard disk controller 466, a motor controller 468, a spindle motor 472, a disk platter 478, and a read/write head 476. Interface controller 420 controls addressing and timing of data to/from disk platter 478. The data on disk platter 478 consists of groups of magnetic signals that may be detected by read/write head assembly 476 when the assembly is properly positioned over disk platter 478. In a typical read operation, read/write head assembly 476 is accurately positioned by motor controller 468 over a desired data track on disk platter 478. Motor controller 468 both positions read/write head assembly 476 in relation to disk platter 478 and drives spindle motor 472 by moving read/write head assembly to the proper data track on disk platter 478 under the direction of hard disk controller 466. Spindle motor 472 spins disk platter 478 at a determined spin rate (RPMs).

Once read/write head assembly 476 is positioned adjacent the proper data track, magnetic signals representing data on disk platter 478 are sensed by read/write head assembly 476 as disk platter 478 is rotated by spindle motor 472. The sensed magnetic signals are provided as a continuous, minute analog signal representative of the magnetic data on disk platter 478. This minute analog signal is transferred from read/write head assembly 476 to read channel module 410 via preamplifier 412. Preamplifier 412 is operable to condition the minute analog signals accessed from disk platter 478. In addition, preamplifier 412 is operable to condition the data from read channel module 410 that is destined to be written to disk platter 478. In turn, read channel module 410 decodes (including adaptive targeting and equalization) and digitizes the received analog signal to recreate the information originally written to disk platter 478. This data is provided as read data 403 to a receiving circuit. A write operation is substantially the opposite of the preceding read operation with write data 401 being provided to read channel module 410. This data is then encoded and written to disk platter 478.

Turning to FIG. 5, a communication system 591 including a receiver 595 with adaptive targeting and equalization is depicted in accordance with different embodiments of the present invention. Communication system 591 includes a transmitter 593 that is operable to transmit encoded information via a transfer medium 597 as is known in the art. The encoded data is received from transfer medium 597 by receiver 595. Receiver 595 incorporates an adaptive equalizer and target coefficient calculation circuit. The incorporated adaptive calculation circuit is capable of adaptively calculating equalizer and target coefficients based upon a received data stream. Thus, the adaptive calculation circuit may be implemented in accordance with that described above in relation to FIGS. 1-3. Based on the disclosure provided herein, one of ordinary skill in the art will recognize a variety of mediums for which equalization and targeting in accordance with embodiments of the present invention may be done.

In conclusion, the invention provides novel systems, devices, methods and arrangements for performing equalization and target filtering. While detailed descriptions of one or more embodiments of the invention have been given above, various alternatives, modifications, and equivalents will be apparent to those skilled in the art without varying from the spirit of the invention. Therefore, the above description should not be taken as limiting the scope of the invention, which is defined by the appended claims. 

1. A method for adaptive equalization, the method comprising: providing a data processing system, wherein the data processing system includes an equalizer circuit and a target filter circuit, and wherein the equalizer circuit performs equalization based at least in part on an equalizer coefficient; generating an error based upon a first output from the equalizer circuit and a second output from the target filter circuit; extracting an inter-symbol interference component of the error; using the inter-symbol interference component to calculate an equalizer gradient; and based at least in part on the equalizer gradient, calculating the equalizer coefficient.
 2. The method of claim 1, wherein the method further comprises: providing a data input to the equalizer circuit, wherein the data input is derived from a storage medium having a number of sectors with each sector having a number of samples.
 3. The method of claim 2, wherein extracting the inter-symbol interference is done on a sample-by-sample basis.
 4. The method of claim 3, wherein calculating the equalizer coefficient is done on a sector by sector basis.
 5. The method of claim 1, wherein the target filter circuit performs noise prediction filtering based at least in part on a target coefficient, and wherein the method further comprises: calculating a target gradient based at least in part in the error; and based at least in part on the target gradient, calculating the target coefficient.
 6. The method of claim 5, wherein the target coefficient is constrained.
 7. The method of claim 5, wherein calculating the target coefficient is done on a sector by sector basis.
 8. The method of claim 5, wherein the target gradient is calculated in accordance with the following equation: q _(g) [n+1]=q _(g) [n]+ã _(n−M0) e _(d,k) [n]; and wherein the target coefficient is calculated in accordance with the following equations: $\left. \overset{\sim}{g}\leftarrow{g + {2\mu_{g}{q_{g}\left\lbrack N_{s} \right\rbrack}}} \right.,\mspace{14mu}\left. {{and}\mspace{14mu} g}\leftarrow{\overset{\sim}{g} + {i_{0}{\frac{{\phi 1} - {i_{0}^{T}\overset{\sim}{g}}}{N_{g}}.}}} \right.$
 9. The method of claim 1, wherein the equalizer coefficient is constrained.
 10. The method of claim 1, wherein the equalizer gradient is calculated in accordance with the following equation: q _(u) [n+1]=q _(u) [n]+x _(n−M0) e _(d,k) [n]; and wherein the equalizer coefficient is calculated in accordance with the following equations: ũ←u−2μ_(u) q _(u) [N _(s)], and u←ũ+A(A ^(T) A)⁻¹ [φ−A ^(T) u].
 11. The method of claim 1, wherein extracting an inter-symbol interference component of the error comprises: performing a data-dependent average of error values.
 12. An adaptive equalization circuit, the circuit comprising: an equalizer circuit operable to equalize a data input based upon an updatable equalizer coefficient, and to provide an equalized output; a target filter circuit operable to filter the data input based at least in part on a target coefficient, and to provide a target output; an error calculation circuit, wherein the error calculation circuit determines a difference between the target output and the equalized output, and wherein the error calculation circuit provides an error output; a data dependent averaging circuit, wherein the data dependent averaging circuit extracts an inter-symbol interference component of the error output; a gradient accumulation circuit operable to calculate an equalizer gradient based at least in part on the inter-symbol interference component of the error output; and an equalizer coefficient calculation circuit that receives the equalizer gradient and calculates the updatable equalizer coefficient.
 13. The circuit of claim 12, wherein the data input is derived from a storage medium having a number of sectors with each sector having a number of samples.
 14. The circuit of claim 12, wherein the data dependent averaging circuit operates on a sample by sample basis to extract the inter-symbol interference component of the error output.
 15. The circuit of claim 14, wherein the equalizer coefficient calculation circuit calculates the updatable equalizer coefficient on a sector by sector basis.
 16. The circuit of claim 12, wherein the target coefficient is an updatable target coefficient, wherein the gradient accumulation circuit is further operable to calculate a target gradient, and wherein the circuit further comprises: a target coefficient calculation circuit that receives the target gradient and calculates the updatable target coefficient.
 17. The circuit of claim 15, wherein the data input is derived from a storage medium having a number of sectors with each sector having a number of samples, and wherein the target coefficient calculation circuit calculates the updatable target coefficient on a sector by sector basis.
 18. The circuit of claim 16, wherein the updatable target coefficient and the updatable equalizer coefficient are constrained.
 19. A transmission device, wherein the transmission device includes: a receiver operable to receive data from a transmission medium, and wherein the receiver includes: an equalizer circuit operable to equalize a data input based upon an updatable equalizer coefficient, and to provide an equalized output; a target filter circuit operable to perform filtering of the data input based at least in part on a target coefficient, and to provide a target output; an error calculation circuit, wherein the error calculation circuit determines a difference between the target output and the equalized output, and wherein the error calculation circuit provides an error output; a data dependent averaging circuit, wherein the data dependent averaging circuit extracts an inter-symbol interference component of the error output; a gradient accumulation circuit operable to calculate an equalizer gradient based at least in part on the inter-symbol interference component of the error output; and an equalizer coefficient calculation circuit that receives the equalizer gradient and calculates the updatable equalizer coefficient.
 20. The transmission device of claim 19, wherein the transmission device is a storage device, and wherein the transmission medium is a magnetic storage medium. 